The invention relates to integrated circuits, and more particularly, to synchronous mirror delay circuits with delay line taps for double data rate (DDR) synchronous dynamic random access memory (SDRAM) devices.
Memory access speed and the resulting data transfer bandwidth has been a typical bottleneck in computer systems and other digital applications. A newer type of dynamic random access memory (DRAM), known as a synchronous DRAM or SDRAM, has been developed to provide faster operation and improve memory access times. SDRAMs are designed to operate synchronously with the system clock with input and output data synchronized to an active edge of the system clock which is driving the processor accessing the SDRAM.
Although SDRAMs have overcome some of the timing disadvantages of other memory devices memory, access is still a limiting factor, and there is a need for still faster memory devices. With this in mind, double data rate (DDR) SDRAMs were developed to allow data transfers on both the rising and falling edges of the system data clock, providing twice the operating speed of the conventional SDRAM. Thus, DDR, SDRAM provides up to twice as much data bandwidth as the conventional SDRAM for a given data clock. In addition, as with SDRAM, DDR SDRAMs are also capable of providing bursts of data at a high-speed data rate.
As clock frequencies increase, it is desirable to have less uncertainty when valid data is available on the output of the memory in DDR SDRAM. As shown in FIG. 1, due to the high speed data transfers DDR SDRAMs use a data strobe signal (DQS) 100 to register the data (DQ) 104 on both edges of the system clock 102. This allows the receiving system to improve latching the presented data under the timing constraints of modern high speed memory data transfers. According to industry standards, when data is being received by the DDR SDRAM, the DQS has a known latency 106, 108 which varies between xc2xe of the system clock cycle (minimum latency) to {fraction (5/4)} of the clock cycle (maximum latency). Because of this variability, and the above mentioned timing constraints of modern high speed memory data transfers, DDR SDRAMs utilize a clock skew adjustment circuit to drive this latency variability to as close to zero as feasible and synchronize the DQS signal and output data signals to the system data clock.
A common clock skew adjustment circuit utilized in DDR SDRAM is a delay locked loop (DLL), shown in FIG. 2. DLL""s generally consist of a delay line 200 of individual delay elements, that generates a replica of a clock signal which is compared against the input clock signal. The clock signal loaded into the delay line 200 is iteratively adjusted until a match or xe2x80x9clockxe2x80x9dis achieved. The delay line 200 is coupled to a shift register 202 that loads data into the delay line 200 to begin generation of the clock pulse signal. The individual delay elements (not shown) in the delay line typically comprise NAND gates that are coupled to an inverter. The shift register 202 is adjusted by a phase detector 204 that compares the replicated clock pulse against the external clock pulse. The phase detector 204 increments or decrements the shift register 202 a fixed amount up and down for each clock cycle, allowing the DLL to iterate until a xe2x80x9clockxe2x80x9dwith the input external clock signal is attained. When the circuit containing the DLL is powering up or coming out of a low power mode it is not uncommon for 50 or more clock cycles to pass until the feedback based DLL attains a lock with the external clock, delaying initial access to the memory.
Another clock skew adjustment circuit utilized in DDR SDRAM, that is not feedback based, is a synchronous mirror delay (SMD). A SMD circuit can attain a lock with the external clock signal in as few as two clock cycles. This ability greatly decreases the time to first access when a DDR SDRAM comes out of a low power mode. A SMD circuit generally includes two delay lines and an accompanying control circuit, all of which must be of a length sufficient to accommodate the full time period of the clock pulse to be matched. Any additional space that would.be required to allow an adequate adjustment range of the clock period must also be incorporated into the SMD circuit, further increasing the SMD circuit size. Therefore, an SMD circuit generally requires more space to implement on the integrated circuit.
For the reasons stated above, and for other reasons stated below which will become apparent to those skilled in the art upon reading and understanding the present specification, there is a need in the art for a system to reduce clock period matching, or lock times, in integrated circuits with clock skew adjustment circuits. Additionally, there is a need to reduce SMD circuit size in integrated circuits.
The above-mentioned problems with SMD circuits, particularly with DDR SDRAM that compensate for the latency variation in the DQS signal, and other problems, are addressed by the present invention and will be understood by reading and studying the following specification.
In one embodiment, an SMD circuit comprises a clock source, a delay segment coupled to the clock source, a data path model coupled to the delay segment, a forward delay line coupled to the data path model, an SMD control circuit coupled to the forward delay line and coupled to the clock source, and a backward delay line coupled to the SMD control circuit and coupled to the delay segment.
In another embodiment, an SMD circuit comprises a clock source, a data path model coupled to the clock source, a first delay segment coupled to the data path model, a forward delay line coupled to the first delay segment, an SMD control circuit coupled to the forward delay line and to the clock source, and a backward delay line coupled to the SMD control circuit, the clock source, and to a second delay segment.
In a further embodiment, an integrated circuit comprises a clock input buffer coupled to receive a clock signal with a time period, a delay segment coupled to the clock input buffer, a data path model coupled to the delay segment, a forward delay line coupled to the data path model, an SMD control circuit coupled to the forward delay line and to the clock input buffer, and a backward delay line coupled to the SMD control circuit and coupled to the delay segment.
In yet another embodiment, a memory device comprises an address interface, a data interface, a control interface, and an SMD clock recovery and skew adjustment circuit. The SMD clock recovery and skew adjustment circuit comprises a clock source, a delay segment coupled to the clock source, a data path model coupled to the delay segment, a forward delay line coupled to the data path model, an SMD control circuit coupled to the forward delay line and coupled to the clock source, and a backward delay line coupled to the SMD control circuit and coupled to the delay segment.
In yet a further embodiment, a DDR memory device interface circuit comprises a data interface, a DQS signal interface, a data latch coupled to the data interface, and an SMD clock recovery and skew adjustment circuit coupled to the data latch and coupled to the DQS signal interface. The SMD clock recovery and skew adjustment circuit comprises a clock input buffer coupled to receive a clock signal with a time period, a data path model coupled to the clock input buffer, a first delay segment coupled to the data path model, a forward delay line coupled to the first delay segment, an SMD control circuit coupled to the forward delay line and to the clock input buffer, and a backward delay line coupled to the SMD control circuit, the clock input buffer, and to a second delay segment.
A method of synchronizing with a clock signal comprises receiving a clock signal having a clock signal time period, subtracting a first time period equivalent to a real data path, subtracting a second time period that is a static component, measuring a remaining component of the clock signal time period, reproducing the remaining component of the clock signal time period, and adding a third time period that is identical to the second time period to the reproduced remaining component of the clock signal time period.
Another method of synchronizing with a clock signal comprises receiving a clock signal having a sequential first and second clock signal time period, delaying the first clock signal time period a first time delay, delaying the first clock signal time period a second time delay equal to a real data path, measuring a remaining component of the first clock signal time period, delaying the second clock signal time period the first time delay, reproducing the remaining component of the first clock signal time period, and merging the reproduced remaining component of the clock signal time period to the delayed second clock signal time period.
A further method of synchronizing with a clock signal comprises coupling a delay segment to a clock source, coupling a data path model to the delay segment, coupling a forward delay line to the data path model, coupling an SMD control circuit to the forward delay line and to the clock source, and coupling a backward delay line to the SMD control circuit and to the delay segment.
In yet another method of synchronizing with a clock source comprises coupling a data path model to a clock source, coupling a first delay segment to the data path model, coupling a forward delay line to the first delay segment, coupling an SMD control circuit to the forward delay line and to the clock source, and coupling a backward delay line to the SMD control circuit, the clock source, and to a second delay segment.
A further method of synchronizing a memory device with a clock source comprises forming an address interface, forming a data interface, forming a control interface, and forming an SMD clock recovery and skew adjustment circuit. The SMD clock recovery and skew adjustment circuit comprises coupling a clock input buffer to receive a clock signal coupling a data path model to the clock input buffer, coupling a first delay segment to the data path model, coupling a forward delay line to the first delay segment, coupling an SMD control circuit to the forward delay line and to the clock input buffer, and coupling a backward delay line to the SMD control circuit, the clock input buffer and to a second delay segment.
Another method for synchronizing a DDR memory device interface circuit with a clock source comprises forming a data interface, forming a DQS signal interface, forming a data latch coupled to the data interface, and forming an SMD clock recovery and skew adjustment circuit coupled to the data latch and the DQS signal interface. The SMD clock recovery and skew adjustment circuit comprises, a clock source, a delay segment coupled to the clock source, a data path model coupled to the delay segment, a forward delay line coupled to the data path model, an SMD control circuit coupled to the forward delay line and to the clock source, and a backward delay line coupled to the SMD control circuit and coupled to the delay segment.